package com.soft.line.controller;

import com.soft.line.service.AppletCommonService;
import com.soft.line.util.MP.AjaxResult;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;


/**
 * 小程序接口
 * 公用 —— 枚举数据，文件上传
 *
 * @author wpb
 * @version 1.0
 * @date 2020/6/1 9:06
 */
@RestController
@RequestMapping("/applet")
public class AppletCommonController {


    @Autowired
    private AppletCommonService appletCommonService;

    /**
     * 小程序使用
     * 获取到所有的枚举数据。
     *
     * @return
     */
    @PostMapping("/getBaseData")
    public AjaxResult getBaseData() {
        return appletCommonService.getBaseData();
    }

    /**
     * 小程序使用
     * 合同file上传
     *
     * @param file         文件
     * @param id           id
     * @param fileName     文件名
     * @param modifyPerson 修改人
     * @return
     */
    @PostMapping("/uploadContractAttach")
    public AjaxResult uploadContractAttach(@RequestParam("file") MultipartFile file,
                                                     @RequestParam("id") Integer id, @RequestParam("fileName") String fileName, @RequestParam("modifyPerson") String modifyPerson) {

        if (!StringUtils.hasText(fileName)) {
            return AjaxResult.error("请填写合同名称");
        }

        if (id == null) {
            return AjaxResult.error("请选择部门");
        }

        if (file.isEmpty()) {
            return AjaxResult.error("请选择要上传的文件！！！");
        }

        return appletCommonService.uploadContractAttach(file, id, fileName, modifyPerson);

    }

    /**
     * 小程序使用
     * 证书 file上传
     *
     * @param file         文件
     * @param id           id
     * @param fileName     文件名
     * @param modifyPerson 修改人
     * @return
     */
    @PostMapping("/uploadCertificateAttach")
    public AjaxResult uploadCertificateAttach(@RequestParam("file") MultipartFile file,
                                                     @RequestParam("id") Integer id, @RequestParam("fileName") String fileName, @RequestParam("modifyPerson") String modifyPerson) {

        if (!StringUtils.hasText(fileName)) {
            return AjaxResult.error("证书名称不存在");
        }

        if (id == null) {
            return AjaxResult.error("请选择部门");
        }

        if (file.isEmpty()) {
            return AjaxResult.error("请选择要上传的文件！！！");
        }

        return appletCommonService.uploadCertificateAttach(file, id, fileName, modifyPerson);

    }


}
